﻿using System;
using System.Collections.Generic;
using System.ServiceModel;
using sharp_net;
using zkdao.Domain;

namespace zkdao.Application {

    [ServiceContract(Namespace = "www.zkdao.com")]
    public interface IUserService {

        [OperationContract]
        UserData GetByID(Guid ID);

        [OperationContract]
        UserData GetByKey(string userkey);

        [OperationContract]
        int GetCount();

        [OperationContract]
        IEnumerable<UserData> GetPager(int pageIndex, int pageSize);

        [OperationContract]
        UserData Register(UserData dataObject);

        [OperationContract]
        bool Approved(string userkey, string approvedID);

        [OperationContract]
        void RequestApproved(string userkey);

        [OperationContract]
        bool Validate(string userkey, string password);

        [OperationContract]
        void Update(string userkey, UserData dataObject);
    }
}